home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d27 / dsplstjb.arc / DSPLSTJB.CLP next >
Text File  |  1991-12-04  |  3KB  |  49 lines

  1.  DSPLSTJOB:  PGM        PARM(&FULLJOB &OUTPUT) /* program name +
  2.                           DSPLSTJOB - command processing pgm for +
  3.                           command DSPLSTJOB - display last job in a +
  4.                           group of duplicate jobs */
  5.              DCL        VAR(&FULLJOB) TYPE(*CHAR) LEN(26)
  6.              DCL        VAR(&OUTPUT) TYPE(*CHAR) LEN(5)
  7.              DCL        VAR(&JOB) TYPE(*CHAR) LEN(10)
  8.              DCL        VAR(&USER) TYPE(*CHAR) LEN(10)
  9.              DCL        VAR(&JOBNBR) TYPE(*CHAR) LEN(6)
  10.              DCL        VAR(&MSGUSER) TYPE(*CHAR) LEN(10)
  11.              DCL        VAR(&HIGHEST) TYPE(*CHAR) LEN(6)
  12.              DCL        VAR(&MSGKEY) TYPE(*CHAR) LEN(4)
  13.              DCL        VAR(&MSGID) TYPE(*CHAR) LEN(7)
  14.              DCL        VAR(&MSGDTA) TYPE(*CHAR) LEN(100)
  15.              MONMSG     MSGID(CPF0000) EXEC(GOTO CMDLBL(ERROR))
  16.              CHGVAR     VAR(&JOB) VALUE(%SST(&FULLJOB 1 10))
  17.              CHGVAR     VAR(&USER) VALUE(%SST(&FULLJOB 11 10))
  18.              CHGVAR     VAR(&JOBNBR) VALUE(%SST(&FULLJOB 21 6))
  19.              IF         COND(&USER *EQ '          ') THEN(CHGVAR +
  20.                           VAR(&USER) VALUE('*N'))
  21.              IF         COND(&JOBNBR *EQ '      ') THEN(CHGVAR +
  22.                           VAR(&JOBNBR) VALUE('*N'))
  23.              DSPJOB     JOB(&JOB.&USER.&JOBNBR) OUTPUT(&OUTPUT)
  24.              MONMSG     MSGID(CPF1069) EXEC(GOTO CMDLBL(DUPS))
  25.              RETURN
  26.  DUPS:       RCVMSG     MSGTYPE(*DIAG) RMV(*NO) KEYVAR(&MSGKEY) +
  27.                           MSGDTA(&MSGDTA) MSGID(&MSGID)
  28.              IF         COND(&MSGID *EQ 'CPF0906') THEN(DO)
  29.              RMVMSG     MSGKEY(&MSGKEY)
  30.              IF         COND(%SST(&MSGDTA 21 6) *GT &HIGHEST) THEN(DO)
  31.              CHGVAR     VAR(&HIGHEST) VALUE(%SST(&MSGDTA 21 6))
  32.              CHGVAR     VAR(&MSGUSER) VALUE(%SST(&MSGDTA 11 10))
  33.              ENDDO
  34.              ENDDO
  35.              IF         COND(&MSGID *NE '       ') THEN(GOTO +
  36.                           CMDLBL(DUPS))
  37.  DSPJOB:     DSPJOB     JOB(&JOB.&MSGUSER.&HIGHEST) OUTPUT(&OUTPUT)
  38.              RETURN
  39.  ERROR:      RCVMSG     MSGTYPE(*DIAG) MSGDTA(&MSGDTA) MSGID(&MSGID)
  40.              IF         COND(&MSGID *EQ '       ') THEN(GOTO +
  41.                           CMDLBL(ESCAPE))
  42.              SNDPGMMSG  MSGID(&MSGID) MSGF(QCPFMSG) MSGDTA(&MSGDTA) +
  43.                           MSGTYPE(*DIAG)
  44.              GOTO       CMDLBL(ERROR)
  45.  ESCAPE:     RCVMSG     MSGTYPE(*EXCP) MSGDTA(&MSGDTA) MSGID(&MSGID)
  46.              SNDPGMMSG  MSGID(&MSGID) MSGF(QCPFMSG) MSGDTA(&MSGDTA) +
  47.                           MSGTYPE(*ESCAPE)
  48.              ENDPGM
  49.